Bentley Map V8i (SELECTseries 10) Help

Requirements for a Read/Write Connection for Bentley Map

Besides the requirements for extracting data from Oracle, there are additional restrictions on tables with spatial data for use with a read/write connection in Bentley Map:

Every entity (table or view) needs to have a primary key constraint that defines the column (or columns) that uniquely identify rows in that entity. For entities with simple (single-column) primary key constraints, the Bentley Geospatial Administrator (GSA) can be used to assign a sequence generator to automatically generate unique values for new rows. For entities with composite (multi-column) primary key constraints, a custom application must be used to define component values for new rows.

Additionally, views may only be used in a read/write connection when they are updateable. Only some views are automatically updateable, but many others can be made updateable using INSTEAD OF triggers.

Both tables and updateable views may be used as subfeatures through the use of foreign key constraints. The GSA automatically models any feature table that contains a foreign key constraint with the “ON DELETE CASCADE” clause as a subfeature of the constraint target. An updateable view may also have a foreign key constraint defined: under some circumstances the GSA will be able to determine whether or not that constraint defines a subfeature relationship; in other cases, the GSA user will have to resolve any ambiguity. While it is possible to define multiple foreign key constraints on an entity, Bentley Map currently only allows one such constraint to define a subfeature.

If the primary key is numeric then the Oracle database is responsible for generating unique IDs using a sequence.

Bentley Map supports two types of primary keys. Besides numeric keys – determined and controlled by Oracle – it is also possible to use the UUID on each XFM feature. This translates to a 32 character VARCHAR unique identifier in Oracle. When a UUID is used, the assignment of the unique key is controlled by Bentley Map. Unlike the numeric key, it does not require a sequence.

A composite key can be created with an SQL statement of the form:

ALTER TABLE CABLE ADD CONSTRAINT CABLE_PK PRIMARY KEY (PK1_ID,PK2_ID,PK3_ID);
Note: When a composite primary key is defined then a custom application must be used to update the component values. Sequence Generators and Bentley Map do not update these values.